import Vue from 'vue'
import App from './App.vue'
import router from './router'
import { registerMicroApps, start } from 'qiankun';
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
import './styles/reset.css'
import Cache from './common/cache';
Vue.config.productionTip = false
// const getActiveRule = (hash) => (location) => location.hash.startsWith(hash);
const cache = new Cache();
registerMicroApps([
  // {
  //   name: 'child-vue2', // 名称
  //   entry: '//localhost:8090/', // 入口地址
  //   // entry:{
  //   //   scripts:['//localhost:8090/child-vue2/js/app.js'],
  //   // },
  //   container: '#sub-app-1', // 微应用挂载节点（domId）
  //   // activeRule: getActiveRule('#/child-vue2'), // 微应用触发的路由
  //   activeRule:'#/child-vue2'
  // },
  {
    name: 'child-vue3', // 名称
    entry: '//localhost:8070', // 入口地址
    container: '#sub-app-2', // 微应用挂载节点（domId）
    // activeRule: getActiveRule('#/child-vue3/vue3'), // 微应用触发的路由
    activeRule:'#/child-vue3'
  },
  // {
  //   name: 'child-react', // 名称
  //   entry: '//localhost:3000', // 入口地址
  //   container: '#sub-app-3', // 微应用挂载节点（domId）
  //   activeRule: getActiveRule('#/child-vue2/vue2'), // 微应用触发的路由
  // },
  {
    name: 'vue3-ts', // 名称
    entry: '//localhost:8060', // 入口地址
    container: '#sub-app-4', // 微应用挂载节点（domId）
    // activeRule: getActiveRule('#/child-vue3/vue3'), // 微应用触发的路由
    activeRule:'#/vue3-ts',
    props: {
      cache,
    },
  },
]);

start({
  sandbox: {
    // experimentalStyleIsolation: true // 启用选择器前缀隔离
    strictStyleIsolation: true // 启用 Shadow DOM
  }
})
Vue.use(ElementUI);
window.test = 'main-vue'
new Vue({
  router,
  render: h => h(App)
}).$mount('#app')
